home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2005 October / PCWOCT05.iso / Software / FromTheMag / XAMPP 1.4.14 / xampp-win32-1.4.14-installer.exe / xampp / php / news.txt < prev    next >
Text File  |  2005-03-30  |  53KB  |  929 lines

  1. PHP                                                                        NEWS
  2. |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
  3. 31 Mar 2005, PHP 5.0.4
  4. - Added SNMPv2 support. (harrie)
  5. - Added Oracle Instant Client support. (cjbj at hotmail dot com, Tony)
  6. - Added length and charsetnr for field array and object in mysqli. (Georg)
  7. - Added checks for negative values to gmp_sqrt(), gmp_powm(), gmp_sqrtrem()
  8.   and gmp_fact() to prevent SIGFPE. (Tony)
  9. - Changed foreach() to throw an exception if IteratorAggregate::getIterator()
  10.   does not return an Iterator. (Marcus)
  11. - Changed phpize not to require libtool. (Jani)
  12. - Updated bundled oniguruma library (used for multibyte regular expression)
  13.   to 3.7.0. (Moriyoshi)
  14. - Updated bundled libmbfl library (used for multibyte functions). (Moriyoshi)
  15.   Fixed bugs:
  16.   . Bug #32063 (mb_convert_encoding ignores named entity 'alpha')
  17.   . Bug #31911 (mb_decode_mimeheader() is case-sensitive to hex escapes)
  18.   . bug #30573 (compiler warnings in libmbfl due to invalid type cast)
  19.   . Bug #30549 (incorrect character translations for some ISO8859 charsets).
  20. - Fixed bug preventing from building oci8 as shared. 
  21.   (stanislav dot voroniy at portavita dot nl, Tony)
  22. - Fixed a bug in mysql_affected_rows and mysql_stmt_affected_rows when the
  23.   api function returns -1 (Georg)
  24. - Fixed several leaks in ext/browscap and sapi/embed. (Andrei)
  25. - Fixed several leaks in ext/filepro. (Tony)
  26. - Fixed build system to always use bundled libtool files. (Jani)
  27. - Fixed a bug in mysqli_stmt_execute() (type conversion with NULL values).
  28.   (Georg)
  29. - Fixed segfault in mysqli_fetch_field_direct() when invalid field offset 
  30.   is passed. (Tony)
  31. - Fixed posix_getsid() & posix_getpgid() to return sid & pgid instead 
  32.   of true. (Tony)   
  33. - Fixed bug #32394 (offsetUnset() segfaults in a foreach). (Marcus)
  34. - Fixed bug #32373 (segfault in bzopen() if supplied path to non-existent 
  35.   file). (Tony)
  36. - Fixed bug #32326 (Check values of Connection/Transfer-Encoding 
  37.   case-incentively in SOAP extension). (Ilia)
  38. - Fixed bug #32290 (call_user_func_array() calls wrong class method within 
  39.   child class). (Marcus)
  40. - Fixed bug #32238 (spl_array.c: void function cannot return value). (Johannes)
  41. - Fixed bug #32210 (proc_get_status() sets "running" always to true). (Ilia)
  42. - Fixed bug #32200 (Prevent using both --with-apxs2 and --with-apxs2filter).
  43.   (Jani)
  44. - Fixed bug #32134 (Overloading offsetGet/offsetSet). (Marcus)
  45. - Fixed bug #32130 (ArrayIterator::seek() does not throw an Exception on 
  46.   invalid index). (Marcus)
  47. - Fixed bug #32115 (dateTime SOAP encoding of timezone incorrect). (Dmitry)
  48. - Fixed bug #32081 (in mysqli default socket value is not being used). (Ilia)
  49. - Fixed bug #32021 (Crash caused by range('', 'z')). (Derick)
  50. - Fixed bug #32011 (Fragments which replaced Nodes are not globaly useable).
  51.   (Rob)
  52. - Fixed bug #32001 (xml_parse_into_struct() function exceeds maximum 
  53.   execution time). (Rob, Moriyoshi)
  54. - Fixed bug #31980 (Unicode exif data not available on Windows). (Edin)
  55. - Fixed bug #31792 (getrusage() does not provide ru_nswap value). (Ilia)
  56. - Fixed bug #31960 (msql_fetch_row() and msql_fetch_array() dropping columns
  57.   with NULL values). (Daniel Convissor)
  58. - Fixed bug #31878 (Segmentation fault using clone keyword on nodes). (Rob)
  59. - Fixed bug #31858 (--disable-cli does not force --without-pear). (Jani)
  60. - Fixed bug #31842 (*date('r') does not return RFC2822 conforming date string).
  61.   (Jani)
  62. - Fixed bug #31832 (SOAP encoding problem with complex types in WSDL mode with
  63.   multiple parts). (Dmitry)
  64. - Fixed bug #31797 (exif_read_data() uses too low nesting limit). (Ilia)
  65. - Fixed bug #31796 (readline completion handler does not handle empty return
  66.   values). (Ilia)
  67. - Fixed bug #31755 (Cannot create SOAP header in no namespace). (Dmitry)
  68. - Fixed bug #31754 (dbase_open() fails for mode = 1). (Mehdi, Derick)
  69. - Fixed bug #31751 (pg_parameter_status() missing on Windows). (Edin)
  70. - Fixed bug #31747 (SOAP Digest Authentication doesn't work with 
  71.   "HTTP/1.1 100 Continue" response). (Dmitry)
  72. - Fixed bug #31732 (mb_get_info() causes segfault when no parameters 
  73.   specified). (Tony)
  74. - Fixed bug #31710 (Wrong return values for mysqli_autocommit/commit/rollback).
  75.   (Georg)
  76. - Fixed bug #31705 (parse_url() does not recognize http://foo.com#bar). (Ilia)
  77. - Fixed bug #31695 (Cannot redefine endpoint when using WSDL). (Dmitry)
  78. - Fixed bug #31684 (dio_tcsetattr(): misconfigured termios settings).
  79.   (elod at itfais dot com)
  80. - Fixed bug #31683 (changes to $name in __get($name) override future 
  81.   parameters). (Dmitry)
  82. - Fixed bug #31699 (unserialize() float problem on non-English locales). (Ilia)
  83. - Fixed bug #31562 (__autoload() problem with static variables). (Marcus)
  84. - Fixed bug #31651 (ReflectionClass::getDefaultProperties segfaults with arrays).
  85.   (Marcus)
  86. - Fixed bug #31623 (OCILogin does not support password grace period).
  87.   (daniel dot beet at accuratesoftware dot com, Tony)
  88. - Fixed bug #31527 (crash in msg_send() when non-string is stored without
  89.   being serialized). (Ilia)
  90. - Fixed bug #31515 (Improve performance of scandir() by factor of 10 or so). (Ilia)
  91. - Fixed bug #31514 (open_basedir uses path_translated rather then cwd for .
  92.   translation). (Ilia)
  93. - Fixed bug #31480 (Possible infinite loop in imap_mail_compose()). (Ilia)
  94. - Fixed bug #31479 (Fixed crash in chunk_split(), when chunklen > strlen). (Ilia)
  95. - Fixed bug #31465 (False warning in unpack() when working with *). (Ilia)
  96. - Fixed bug #31454 (session_set_save_handler crashes PHP when supplied 
  97.   non-existent object ref). (Tony)
  98. - Fixed bug #31444 (Memory leak in zend_language_scanner.c).
  99.   (hexer at studentcenter dot org)
  100. - Fixed bug #31442 (unserialize broken on 64-bit systems). (Marcus)
  101. - Fixed bug #31440 ($GLOBALS can be overwritten via GPC when register_globals
  102.   is enabled). (Ilia)
  103. - Fixed bug #31422 (No Error-Logging on SoapServer-Side). (Dmitry)
  104. - Fixed bug #31413 (curl POSTFIELDS crashes on 64-bit platforms). (Joe)
  105. - Fixed bug #31396 (compile fails with gd 2.0.33 without freetype). (Jani)
  106. - Fixed bug #31371 (highlight_file() trims new line after heredoc). (Ilia)
  107. - Fixed bug #31361 (simplexml/domxml segfault when adding node twice). (Rob)
  108. - Fixed bug #31348 (CachingIterator::rewind() leaks). (Marcus)
  109. - Fixed bug #31346 (ArrayIterator::next segfaults). (Marcus)
  110. - Fixed bug #31190 (Unexpected warning then exception is thrown from 
  111.   call_user_func_array()). (phpbugs at domain51 dot net, Dmitry)
  112. - Fixed bug #31142 (imap_mail_compose() fails to generate correct output). (Ilia)
  113. - Fixed bug #31139 (XML Parser Functions seem to drop & when parsing). (Rob)
  114. - Fixed bug #31398 (When magic_guotes_gpc are enabled filenames with ' get cutoff).
  115.   (Ilia)
  116. - Fixed bug #31288 (Possible crash in mysql_fetch_field(), if mysql_list_fields() 
  117.   was not called previously). (Ilia)
  118. - Fixed bug #31107, #31110, #31111, #31249 (Compile failure of zend_strtod.c).
  119.   (Jani)
  120. - Fixed bug #31110 (PHP 4.3.10 does not compile on Tru64 UNIX 5.1B). (Derick)
  121. - Fixed bug #31107 (Compile failure on Solaris 9 (Intel) and gcc 3.4.3). (Derick)
  122. - Fixed bug #31103 (Better error message when c-client cannot be found). (Ilia)
  123. - Fixed bug #31101 (missing kerberos header file path with --with-openssl). (Jani)
  124. - Fixed bug #31098 (isset() / empty() incorrectly return true in dereference of
  125.   a string type). (Moriyoshi)
  126. - Fixed bug #31087 (broken php_url_encode_hash macro). (Ilia)
  127. - Fixed bug #31072 (var_export() does not output an array element with an empty
  128.   string key). (Derick)
  129. - Fixed bug #31060 (imageftbbox() does not use linespacing parameter). (Jani)
  130. - Fixed bug #31056 (php_std_date() returns invalid formatted date if 
  131.   y2k_compliance is On). (Ilia)
  132. - Fixed bug #31055 (apache2filter: per request leak proportional to the full
  133.   path of the request URI). (kameshj at fastmail dot fm)
  134. - Fixed bug #30901 (can't send cookies with soap envelop). (Dmitry)
  135. - Fixed bug #30871 (Misleading warning message for array_combine()). (Andrey)
  136. - Fixed bug #30868 (evaluated pointer comparison in mbregex causes compile
  137.   failure). (Moriyoshi)
  138. - Fixed bug #30862 (Static array with boolean indexes). (Marcus)
  139. - Fixed bug #30726 (-.1 like numbers are not being handled correctly). (Ilia)
  140. - Fixed bug #30725 (PHP segfaults when an exception is thrown in getIterator() 
  141.   within foreach). (Marcus)
  142. - Fixed bug #30609 (cURL functions bypass open_basedir). (Jani)
  143. - Fixed bug #30446 (apache2handler: virtual() includes files out of sequence)
  144. - Fixed bug #30430 (odbc_next_result() doesn't bind values and that results 
  145.   in segfault). (pdan-php at esync dot org, Tony)
  146. - Fixed bug #30266 (Invalid opcode 137/1/8). (Marcus)
  147. - Fixed bug #30120 (imagettftext() and imagettfbbox() accept too many
  148.   parameters). (Jani)
  149. - Fixed bug #30106 (SOAP cannot not parse 'ref' element. Causes Uncaught
  150.   SoapFault exception). (Dmitry)
  151. - Fixed bug #29989 (type re_registers redefined in oniguruma.h). (Moriyoshi)
  152. - Fixed bug #28803 (enabled debug causes bailout errors with CLI on AIX 
  153.   because of fflush() called on already closed filedescriptor). (Tony)
  154. - Fixed bug #29767 (Weird behaviour of __set($name, $value)). (Dmitry)
  155. - Fixed bug #29733 (printf() handles repeated placeholders wrong).
  156.   (bugs dot php dot net at bluetwanger dot de, Ilia)
  157. - Fixed bug #29424 (width and height inverted for JPEG2000 files). (Ilia)
  158. - Fixed bug #29329 (configure for mysqli with shared doesn't work). (Georg)
  159. - Fixed bug #29136 (make test - libtool failure on MacOSX). (Jani)
  160. - Fixed bug #28976 (mail(): use "From:" from headers if sendmail_from is empty).
  161.   (Jani)
  162. - Fixed bug #28930 (PHP sources pick wrong header files generated by bison).
  163.   (eggert at gnu dot org, Jani)
  164. - Fixed bug #28840 (__destruct of a class that extends mysqli not called).
  165.   (Marcus)
  166. - Fixed bug #28804 (ini-file section parsing pattern is buggy).
  167.   (wendland at scan-plus dot de)
  168. - Fixed bug #28451 (corrupt EXIF headers have unlimited recursive IFD directory
  169.   entries). (Andrei)
  170. - Fixed bug #28444 (Cannot access undefined property for object with overloaded
  171.   property access). (Dmitry)
  172. - Fixed bug #28442 (Changing a static variables in a class changes it across 
  173.   sub/super classes.) (Marcus)
  174. - Fixed bug #28324 (HTTP_SESSION_VARS appear when register_long_arrays is 
  175.   Off). (Tony)
  176. - Fixed bug #28074 (FastCGI: stderr should be written in a FCGI stderr stream).
  177.   (chris at ex-parrot dot com)
  178. - Fixed bug #28067 (partially incorrect utf8 to htmlentities mapping). (Derick,
  179.   Benjamin Greiner)
  180. - Fixed bug #28041 (SOAP HTTP Digest Access Authentication). (Dmitry)
  181. - Fixed bug #27633 (Double \r problem on ftp_get in ASCII mode on Win32). (Ilia)
  182. - Fixed bug #18613 (Multiple OUs in x509 certificate not handled properly).
  183.   (Jani)
  184.  
  185. 15 Dec 2004, PHP 5.0.3
  186. - Added the %F modifier to *printf to render a non-locale-aware representation
  187.   of a float with the . as decimal seperator. (Derick)
  188. - Fixed error handling in mysqli_multi_query. (Georg)
  189. - Extended the functionality of is_subclass_of() to accept either a class name
  190.   or an object as first parameter. (Andrey) 
  191. - Fixed potential problems with unserializing invalid serialize data. (Marcus)
  192. - Fixed bug #32076 (ReflectionMethod::isDestructor() always return true). 
  193.   (Derick, Tony)
  194. - Fixed bug #31034 (Problem with non-existing iconv header file). (Derick)
  195. - Fixed bug #30995 (snmp extension does not build with net-snmp 5.2). (Ilia)
  196. - Fixed bug #30994 (SOAP server unable to handle request with references).
  197.   (Dmitry)
  198. - Fixed bug #30990 (allow popen() on *NIX to accept 'b' flag). (Ilia)
  199. - Fixed bug #30967 (properties in extended mysqli classes don't work). (Georg)
  200. - Fixed bug #30928 (When Using WSDL, SoapServer doesn't handle private or
  201.   protected properties). (Dmitry)
  202. - Fixed bug #30922 (reflective functions crash PHP when interfaces extend
  203.   themselves). (Tony, Dmitry)
  204. - Fixed bug #30904 (segfault when recording soapclient into session). (Tony,
  205.   Dmitry)
  206. - Fixed bug #30890 (MySQLi testsuite)
  207. - Fixed bug #30856 (ReflectionClass::getStaticProperties segfaults). (Marcus)
  208. - Fixed bug #30832 ("!" stripped off comments in xml parser). (Rob)
  209. - Fixed bug #30799 (SoapServer doesn't handle private or protected properties).
  210.   (Dmitry)
  211. - Fixed bug #30783 (Apache crash when using ReflectionFunction::
  212.   getStaticVariables()). (Marcus)
  213. - Fixed bug #30750 (Meaningful error message when upload directory is not 
  214.   accessible). (Ilia)
  215. - Fixed bug #30685 (Malformed SOAPClient http header reequest). (Dmitry)
  216. - Fixed bug #30672 (Problem handling exif data in jpeg images at unusual 
  217.   places). (Marcus)
  218. - Fixed bug #30658 (Ensure that temporary files created by GD are removed).
  219.   (Ilia)
  220. - Fixed bug #30645 (def. multi result set support for mysql_connect). (Georg)
  221. - Fixed bug #30637 (compile with pear error). (Antony)
  222. - Fixed bug #30587 (array_multisort doesn't separate zvals before 
  223.   changing them). (Tony)
  224. - Fixed bug #30572 (crash when comparing SimpleXML attribute to a boolean).
  225.   (Andi)
  226. - Fixed bug #30566 (attribute namespace URIs are inconsistent when parsing).
  227.   (Rob)
  228. - Fixed bug #30490 (PEAR installation fails). (Antony)
  229. - Fixed bug #30475 (curl_getinfo() may crash in some situations). (Ilia)
  230. - Fixed bug #30442 (segfault when parsing ?getvariable[][ ). (Tony)
  231. - Fixed bug #30388 (rename across filesystems loses ownership and 
  232.   permission info). (Tony)
  233. - Fixed bug #30387 (stream_socket_client async connect was broken).
  234.   (vnegrier at esds dot com, Wez).
  235. - Fixed bug #30381 (Strange results with get_class_vars()). (Marcus)
  236. - Fixed bug #30375 (cal_info() does not work without a parameter). (Ilia)
  237. - Fixed bug #30362 (stream_get_line() not handling end string correctly).
  238.   (Ilia)
  239. - Fixed bug #30359 (SOAP client requests have no port in "Host" field).
  240.   (Dmitry)
  241. - Fixed bug #30356 (str_ireplace() does not work on all strings). (Ilia)
  242. - Fixed bug #30344 (Reflection::getModifierNames() returns too long strings).
  243.   (Marcus)
  244. - Fixed bug #30329 (Error Fetching http body, No Content-Length, connection
  245.   closed or chunked data). (Dmitry)
  246. - Fixed bug #30282 (segfault when using unknown/unsupported 
  247.   session.save_handler and/or session.serialize_handler). (Tony)
  248. - Fixed bug #30281 (Prevent non-wbmp images from being detected as such).
  249.   (Ilia)
  250. - Fixed bug #30276 (Possible crash in ctype_digit on large numbers). (Ilia)
  251. - Fixed bug #30230 (exception handler not working with objects). (Marcus)
  252. - Fixed bug #30224 (Sybase date strings are sometimes not null terminated).
  253.   (Ilia)
  254. - Fixed bug #30175 (SOAP results aren't parsed correctly). (Dmitry)
  255. - Fixed bug #30147 (OO sqlite_fetch_object did not reset error handler). (Wez)
  256. - Fixed bug #30133 (get_current_user() crashes on Windows). (Edin)
  257. - Fixed bug #30061 (xml_set_start_namespace_decl_handler not called). (Rob)
  258. - Fixed bug #30057 (did not detect IPV6 on FreeBSD 4.1). (Wez)
  259. - Fixed bug #30042 (strtotime does not use second param). (Derick)
  260. - Fixed bug #30027 (Possible crash inside ftp_get()).
  261.   (cfield at affinitysolutions dot com)
  262. - Fixed bug #29954 (array_reduce segfaults when initial value is array). (Tony)
  263. - Fixed bug #29883 (isset gives invalid values on strings). (Tony, Dmitry)
  264. - Fixed bug #29801 (Set limit on the size of mmapable data). (Ilia)
  265. - Fixed bug #29557 (strtotime error). (Derick)
  266. - Fixed bug #29418 (double free when openssl_csr_new fails).
  267.   (Kamesh Jayachandran).
  268. - Fixed bug #29385 (Soapserver always uses std class). (David, Dmitry)
  269. - Fixed bug #29211 (SoapClient doesn't request wsdl through proxy). (Rob)
  270. - Fixed bug #28817 (Var problem when extending domDocument). (Georg)
  271. - Fixed bug #28599 (strtotime fails with zero base time). (Derick)
  272. - Fixed bug #28598 (Lost support for MS Symbol fonts). (Pierre)
  273. - Fixed bug #28220 (mb_strwidth() returns wrong width values for some hangul
  274.   characters). (Moriyoshi)
  275. - Fixed bug #28228 (NULL decimal separator is not being handled correctly).
  276.   (Ilia)
  277. - Fixed bug #28209 (strtotime("now")). (Derick)
  278. - Fixed bug #27798 (private / protected variables not exposed by 
  279.   get_object_vars() inside class). (Marcus)
  280. - Fixed bug #27728 (Can't return within a zend_try {} block or the previous
  281.   bailout state isn't restored. (Andi)
  282. - Fixed bug #27183 (Userland stream wrapper segfaults on stream_write). 
  283.   (Christian)
  284.  
  285. 23 Sep 2004, PHP 5.0.2
  286. - Added new boolean (fourth) parameter to array_slice() that turns on the
  287.   preservation of keys in the returned array. (Derick)
  288. - Added the sorting flag SORT_LOCALE_STRING to the sort() functions which makes
  289.   them sort based on the current locale. (Derick)
  290. - Added interface_exists() and make class_exists() only return true for real
  291.   classes. (Andrey)
  292. - Added PHP_EOL constant that contains the OS way of representing newlines.
  293.   (Paul Hudson, Derick)
  294. - Implemented periodic PCRE compiled regexp cache cleanup, to avoid memory
  295.   exhaustion. (Andrei)
  296. - Renamed SoapClient->__call() to SoapClinet->__soapCall(). (Dmitry)
  297. - Fixed bug with raw_post_data not getting set (Brian)
  298. - Fixed a file-descriptor leak with phpinfo() and other 'special' URLs (Zeev)
  299. - Fixed bug #30209 (ReflectionClass::getMethod() lowercases attribute). 
  300.   (Marcus)
  301. - Fixed bug #30182 (SOAP module processing WSDL file dumps core). (Dmitry)
  302. - Fixed bug #30045 (Cannot pass big integers (> 2147483647) in SOAP requests).
  303.   (Dmitry)
  304. - Fixed bug #29985 (unserialize()/ __PHP_Incomplete_class does not report 
  305.   correctly class name). (Marcus, Tony)
  306. - Fixed bug #29945 (simplexml_load_file URL limitation 255 char). (Rob)
  307. - Fixed bug #29873 (No defines around pcntl_*priority definitions). (Derick)
  308. - Fixed bug #29844 (SOAP doesn't return the result of a valid SOAP request).
  309.   (Dmitry)
  310. - Fixed bug #29842 (soapclient return null value). (Dmitry)
  311. - Fixed bug #29839 (incorrect convert (xml:lang to lang)). (Dmitry)
  312. - Fixed bug #29830 (SoapServer::setClass() should not export non-public
  313.   methods). (Dmitry)
  314. - Fixed bug #29828 (Interfaces no longer work). (Marcus)
  315. - Fixed bug #29821 (Fixed possible crashes in convert_uudecode() on invalid
  316.   data). (Ilia)
  317. - Fixed bug #29808 (array_count_values() breaks with numeric strings). (Ilia)
  318. - Fixed bug #29805 (HTTP Authentication Issues). (Uwe Schindler)
  319. - Fixed bug #29795 (SegFault with Soap and Amazon's Web Services). (Dmitry)
  320. - Fixed bug #29737 (ip2long should return -1 if IP is 255.255.255.255 and FALSE
  321.   on error). (Tony)
  322. - Fixed bug #29711 (Changed ext/xml to default to UTF-8 output). (Rob)
  323. - Fixed bug #29678 (opendir() with ftp:// wrapper segfaults if path does not
  324.   have trailing slash). (Ilia)
  325. - Fixed bug #29657 (xml_* functions throw non descriptive error). 
  326.   (Christian, Rob)
  327. - Fixed bug #29656 (segfault on result and statement properties). (Georg)
  328. - Fixed bug #29566 (foreach/string handling strangeness (crash)). (Dmitry)
  329. - Fixed bug #29447 (Reflection API issues). (Marcus)
  330. - Fixed bug #29296 (Added sslv2 and sslv3 transports). (Wez)
  331. - Fixed bug #29283 (Invalid statement handle in mysqli on execute). (Georg)
  332. - Fixed bug #29913 (parse_url() is now binary safe). (Ilia)
  333. - Fixed bug #27994 (segfault with Soapserver when WSDL-Cache is enabled).
  334.   (Dmitry)
  335. - Fixed bug #27791 (Apache 2.0 SAPI build against Apache 2 HEAD). (Joe Orton,
  336.   Derick)
  337. - Fixed bug #26737 (private/protected properties not serialized when user
  338.   declared method __sleep() exists). E_NOTICE thrown when __sleep() returns
  339.   name of non-existing member. (Andrey, Curt)
  340.  
  341. 12 Aug 2004, PHP 5.0.1
  342. - Changed destructor mechanism so that destructors are called prior to request
  343.   shutdown. (Marcus)
  344. - Rewritten UNIX and Windows install help files. (Documentation Team)
  345. - Updated several libraries bundled with the windows release which now 
  346.   includes libxml2-2.6.11, libxslt-1.1.7 and iconv-1.9.1. (Rob, Edin)
  347. - Improved and moved ActiveScript SAPI to PECL.  (Wez)
  348. - Fixed bug #29606 (php_strip_whitespace() prints to stdout rather then
  349.   returning the value). (Ilia)
  350. - Fixed bug #29577 (MYSQLI_CLIENT_FOUND_ROWS undefined) (Georg)
  351. - Fixed bug #29573 (Segmentation fault, when exception thrown within
  352.   PHP function called from XSLT). (Christian)
  353. - Fixed bug #29522 (accessing properties without connection) (Georg)
  354. - Fixed bug #29505 (get_class_vars() severely broken when used with arrays).
  355.   (Marcus)
  356. - Fixed bug #29490 (.Net object instantiation failed). (Michael Sisolak).
  357. - Fixed bug #29474 (win32: usleep() doesn't work). (Wez)
  358. - Fixed bug #29449 (win32: feof() hangs on empty tcp stream). (Wez)
  359. - Fixed bug #29437 (Possible crash inside array_walk_recursive()). (Ilia)
  360. - Fixed bug #29431 (crash when parsing invalid address; invalid address
  361.   returned by stream_socket_recvfrom(), stream_socket_getname()). (Wez)
  362. - Fixed bug #29409 (Segfault in PHP functions called from XSLT). (Rob)
  363. - Fixed unloading of dynamically loaded extensions. 
  364.   (Marcus, kameshj at fastmail dot fm)
  365. - Fixed bug #29395 (sqlite_escape_string() returns bogus data on empty
  366.   strings). (Ilia, Tony)
  367. - Fixed bug #29392 (com_dotnet crashes when echo'ing an object). (Wez)
  368. - Fixed bug #29368 (The destructor is called when an exception is thrown from 
  369.   the constructor). (Marcus)
  370. - Fixed bug #29354 (Exception constructor marked as both public and protected).
  371.   (Marcus)
  372. - Fixed bug #29342 (strtotime() does not handle empty date string properly).
  373.   (Ilia)
  374. - Fixed bug #29340 (win32 build produces invalid php_ifx.dll). (Edin)
  375. - Fixed bug #29335 (fetch functions now use MYSQLI_BOTH as default) (Georg)
  376. - Fixed bug #29291 (get_class_vars() return names with NULLs). (Marcus)
  377. - Fixed bug #29264 (gettext extension not working). (Edin)
  378. - Fixed bug #29258 (variant_date_from_timestamp() does not honour
  379.   timezone).  (Wez)
  380. - Fixed bug #29256 (error when sending large packets on a socket). (Dmitry)
  381. - Fixed bug #29236 (memory error when wsdl-cache is enabled). (Dmitry)
  382. - Fixed bug #29147 (Compile Error in mnoGoSearch functions). (Sergey, Antony)
  383. - Fixed bug #29132 ($_SERVER["PHP_AUTH_USER"] isn't defined). (Stefan)
  384. - Fixed bug #29119 (html_entity_decode() misbehaves with UTF-8). (Moriyoshi)
  385. - Fixed bug #29109 (SoapFault exception: [WSDL] Out of memory). (Dmitry)
  386. - Fixed bug #29061 (soap extension segfaults). (Dmitry)
  387. - Fixed bug #28985 (__getTypes() returning nothing on complex WSDL). (Dmitry)
  388. - Fixed bug #28969 (Wrong data encoding of special characters). (Dmitry)
  389. - Fixed bug #28895 (ReflectionClass::isAbstract always returns false). (Marcus)
  390. - Fixed bug #28829 (Thread-unsafety in bcmath elementary values). (Sara)
  391. - Fixed bug #28464 (catch() does not catch exceptions by interfaces). (Marcus)
  392. - Fixed bug #27669 (PHP 5 didn't support all possibilities for calling static
  393.   methods dynamically). (Dmitry)
  394. - Fixed ReflectionClass::getMethod() and ReflectionClass::getProperty() to
  395.   raise an ReflectionException instead of returning NULL on failure.
  396.   (Sebastian)
  397. - Fixed convert.* filters to consume remaining buckets_in on flush. (Sara)
  398. - Fixed bug in mysqli->client_version. (Georg)
  399.  
  400. 13 Jul 2004, PHP 5.0.0
  401. - Updated PCRE to provide better error handling in certain cases. (Andrei)
  402. - Changed doc comments to require a single white space after '/**'. (Marcus)
  403. - Fixed bug #29019 (Database not closing). (Marcus)
  404. - Fixed bug #29008 (array_combine() does not handle non-numeric/string keys).
  405.   (Ilia)
  406. - Fixed bug #28999 (fixed behaviour of exec() to work as it did in 4.X). (Ilia)
  407. - Fixed bug #28868 (Internal filter registry not thread safe). (Sara)
  408. - Fixed bug #28851 (call_user_func_array has typo in error message). (Marcus)
  409. - Fixed bug #28831 (ArrayObject::offsetGet() does the work of offsetUnset()). 
  410.   (Marcus)
  411. - Fixed bug #28822 (ArrayObject::offsetExists() works inverted). (Marcus)
  412. - Fixed bug #28789 (ReflectionProperty getValue() fails on public static 
  413.   members). (Marcus)
  414. - Fixed bug #28771 (Segfault when using xslt and clone). (Rob)
  415. - Fixed bug #28751 (SoapServer does not call _autoload()). (Dmitry)
  416. - Fixed bug #28739 (array_*diff() and array_*intersect() not clearing the fci
  417.   cache before work). (Andrey)
  418. - Fixed bug #28721 (appendChild() and insertBefore() unset DOMText).(Rob)
  419. - Fixed bug #28702 (SOAP does not parse WSDL service address correctly). (Dmitry)
  420. - Fixed bug #28699 (Reflection api bugs). (Marcus)
  421. - Fixed bug #28694 (ReflectionExtension::getFunctions() crashes PHP). (Marcus)
  422. - Fixed bug #28512 (Allocate enough space to store MSSQL data). (Frank)
  423. - Fixed strip_tags() to correctly handle '\0' characters. (Stefan)
  424.  
  425. 7 Jun 2004, PHP 5 Release Candidate 3
  426. - Moved the PDFLib extension to PECL. (Wez)
  427. - Added MySQL 4.1.2-alpha and 4.1.3-beta support to MySQLI extension. (Georg)
  428. - Added support for dumping private/protected properties to var_dump().
  429.   (Andrey)
  430. - Added count() support for COM arrays. (Wez)
  431. - Added Firebird/InterBase UDF source that allows PHP functions to be called 
  432.   from SQL (Ard)
  433. - Removed Firebird/Interbase function ibase_timefmt() (Ard)
  434. - Changed user error handler mechanism to relay to built-in error handler if it
  435.   returns false. (Andrei)
  436. - Changed class type hints for function parameters to not allow the passing of
  437.   NULL values. (Andi)
  438. - Changed tidy_node to tidyNode and removed tidy_exception. (John)
  439. - Fixed ip2long() to return FALSE if an IP address passed to this function
  440.   is not valid. (Derick)
  441. - Fixed memory leak in memory manager. (Andi)
  442. - Fixed problem with exceptions returning from include(). (Dmitry)
  443. - Fixed bug #28641 (Instance of Interface). (Marcus)
  444. - Fixed bug #28430 (Extending mysqli class). (Georg)
  445. - Fixed bug #28311 (Transparency detection code is off by 1).
  446.   (Ilia, pikeman at pikeman dot sytes dot net)
  447. - Fixed bug #28304 (Missing bounds check inside imagefilter()). (Ilia)
  448. - Fixed bug #28300 (Userspace stream/filter names forced to lowercase). (Sara)
  449. - Fixed bug #28287 (stream_*_register() not calling __autoload()). (Sara)
  450. - Fixed bug #28267 (php_image_filter_contrast calls gdImageBrightness). (Ilia)
  451. - Fixed bug #28239 (No results returned on SOAP call, no error given). (Dmitry)
  452. - Fixed bug #28205 (num_rows property for statement object). (Georg)
  453. - Fixed bug #28161 (COM: Array style properties could not be accessed). (Wez)
  454. - Fixed bug #28125 (ArrayObject leaks when accessing elements). (Marcus)
  455. - Fixed bug #28100 (NULL parameter support for mysqli_ssl_set). (Georg)
  456. - Fixed bug #28099 (ArrayObject doesn't implement ArrayAccess). (Marcus)
  457. - Fixed bug #27929 (SPL: change visibility of ArrayIterator::__construct).
  458.   (Marcus)
  459. - Fixed bug #27640 (memory leak of registered_zend_ini_directives).  (Dmitry)
  460. - Fixed bug #27063 (SPL: ArrayObject does not handle PPP correctly). (Marcus)
  461.  
  462. 25 Apr 2004, PHP 5 Release Candidate 2
  463. - Implementing an interface/abstract method with the wrong prototype is now
  464.   a fatal error. (Zeev)
  465. - Reimplemented zend.ze1_compatibility_mode to have better PHP 4 compliance.
  466.   (Dmitry, Andi)
  467. - Under CLI, fclose() on php://stdin, php://stdout and php://stderr will now
  468.   close the real stream.  Please update your CLI scripts to use STDIN, STDOUT
  469.   and STDERR constants instead of fopen()/fclose(). (Wez)
  470. - Moved yaz extension to PECL. (Wez)
  471. - Added pty support to proc_open(). (Wez)
  472. - Added possibility to check in which extension an internal class was defined 
  473.   in using reflection API. (Marcus)
  474. - Changed tidy error handling to no longer use exceptions and 
  475.   renamed the "error_buf" property to errorBuffer. (John)
  476. - Changed class and method names to use studlyCaps convention. (Marcus)
  477. - Changed language parser to throw errors when a non-empty signature is used in
  478.   a destructor definition. (Marcus)
  479. - Changed HTTP file uploads not to throw E_WARNINGs and E_NOTICEs. The error 
  480.   value in the $_FILES global should be used for error handling. (Derick)
  481. - Changed __construct() to always take precedence over old style constructor.
  482.   (Dmitry)
  483. - Fixed handling of return values from storred procedures in mssql_execute()
  484.   with multiple result sets returned. (Frank)
  485. - Fixed bug #28096 (stream_socket_accept() doesn't work with ssl). (Wez)
  486. - Fixed bug #28007 (compile mssql extension with old versions of FreeTDS
  487.   fails). (Frank)
  488. - Fixed bug #27997 (SPL: Crash with getInnerIterator()). (Marcus)
  489. - Fixed bug #27974 (COM doesn't pass array parameters). (Wez)
  490. - Fixed bug #27928 (sqlite incorrectly handles invalid filenames). (Ilia)
  491. - Fixed bug $27923 (in some cases using foreach() to iterate over values
  492.   led to a false error message about the key being a reference). (Adam)
  493. - Fixed bug #27865 (STDIN, STDOUT, STDERR are dup()d under CLI). (Wez)
  494. - Fixed bug #27821 (xml_parse() segfaults when xml_set_object() is called from
  495.   class method). (Andi, Rob)
  496. - Fixed bug #27742 (WDSL SOAP Parsing Schema bug). (Dmitry)
  497. - Fixed bug #27722 (Segfault on schema without targetNamespace). (Dmitry)
  498. - Fixed bug #27719 (mktime issues on and around DST changeover). (Rasmus)
  499. - Fixed bug #27681 (soap extension fails without HAVE_TM_GMTOFF). (Dmitry)
  500. - Fixed bug #27641 (Object cloning in ze1_compatibility_mode was reimplemented)
  501.   (Dmitry, Andi)
  502. - Fixed bug #27628 (Simplify the process of making a POST request via stream
  503.   context). (Ilia)
  504. - Fixed bug #27619 (filters not applied to pre-buffered stream data). (Sara)
  505. - Fixed bug #27519 (Reflection_Function constructor crashes with non-existant 
  506.   function's name). (Marcus)
  507. - Fixed bug #27457 (handling of numeric indexes in strtr()). (Dmitry)
  508. - Fixed bug #27397 (debug_backtrace() not showing function arguments). (Zeev)
  509. - Fixed bug #27283 (The last catch statement was sometimes skipped). (Andi)
  510. - Fixed bug #26441 (When __set() returned a value it corrupted it). (Andi)
  511. - Fixed bug #19749 (shouldn't mmap() files larger than memory_limit). (Wez)
  512.  
  513. 18 March 2004, PHP 5 Release Candidate 1
  514. - Fixed numerous bugs with the just-in-time auto-global initialization, that
  515.   could cause $_SERVER, $argv/$argc and other variables not to work properly.
  516.   (Zeev)
  517. - Fixed data corruption with constant assignments to object properties. (Zeev)
  518. - Changed __toString() to be called automatically only with print and echo
  519.   statements. (Andi)
  520. - Replaced the exec_finished hook by the zend_post_deactive hook for
  521.   extensions. The new hook will be run after the symbol table and destructors
  522.   are run. (Derick)
  523. - Fixed possible crash when internal get_method() is not defined. (Andi)
  524. - Fixed calling methods using call_user_func() in conjunction with 
  525.   the array("Class","Method") syntax to use the scope of the PHP user function.
  526.   (Dmitry)
  527. - Fixed php-cgi to not ignore command-line switches when run in a web context.
  528.   This fixes our test cases allowing INI with GET sections to work. (Rasmus)
  529. - Fixed getopt() so it works without $_SERVER. (Rasmus, bfrance)
  530. - Added support for PHP 4 style object comparisons which is enabled in
  531.   ze1_compatiblity_mode. (Andi)
  532. - Added support for PHP 4 style object conversion to long, double, and boolean
  533.   values which is enabled in ze1_compatibility_mode. (Andi, Stas)
  534. - Allow object oriented extensions to overload comparison functions and other
  535.   operations. Solves problems using SimpleXML values. (Andi, Zeev)
  536. - Fixed crash when accessing a class constant with a value which in turn is
  537.   also a constant. (Dmitry)
  538. - Fixed object's truth value conversion. It is always true unless
  539.   ze1_compatibility_mode is on in which it behaves like in PHP 4. (Stas)
  540. - Improved out of memory handling in new memory manager. (Stas)
  541. - Fixed crash when an object references itself during destructor call. (Andi)
  542. - Fixed crash in foreach() when iterating over object properties or a method's
  543.   return values. (Andi)
  544. - Fixed crash when an exception is thrown in a destructor. Such exceptions are
  545.   now ignored as destruction happens out of context at no definite time. (Andi)
  546. - Fixed crashes in exception handling. (Dmitry, Andi)
  547. - Changed prototype checks so that they aren't done on constructors. (Andi)
  548. - Changed prototype checks to output an E_STRICT message instead of
  549.   an E_COMPILE_ERROR. (Andi)
  550. - Changed Iterator::has_more() to Iterator::valid(). (Marcus)
  551. - Upgraded bundled oniguruma library to version 2.2.2. (Rui, Moriyoshi)
  552. - Added mb_list_encoding() to return an array with all mbstring supported
  553.   encodings. (Derick)
  554. - Added support for more ISO8601 datetime formats in strtotime(). (Moriyoshi)
  555.   . Timezone specifier (ex. "20040301T02:00:00+19:00")
  556.   . Week specifier (ex. "1997W021")
  557. - Renamed php.ini option "zend2.implicit_clone" to 
  558.   "zend.ze1_compatibility_mode" as it doesn't only affect implicit cloning.
  559.   (Andi, Zeev)
  560. - Methods that override parent methods are now subject to prototype checking,
  561.   and have to be compatible with the method they're overriding - this check is 
  562.   disabled in compatibility mode. (Andi, Zeev)
  563. - Fixed crash in php_ini_scanned_files() when no additional INI files were
  564.   actually parsed. (Jon)
  565. - Fixed bug in gdImageFilledRectangle in the bundled GD library, that required
  566.   x1 < x2 and y1 < y2 for coordinates. (Derick)
  567. - Fixed crash with foreach() and temporary objects($obj->method()->a ...) where
  568.   method returns a non-referenced object. (Andi, Zeev)
  569. - Fixed problem preventing startup errors from being displayed. (Marcus)
  570. - Fixed start-up problem if both SPL and SimpleXML were enabled. The double
  571.   initialization of apache 1.3 was causing problems here. (Marcus, Derick)
  572. - Fixed bug #27606 (Expression must be a modifiable lvalue compiler error).
  573.   (Derick)
  574. - Fixed bug #27597 (pg_fetch_array not returning false). (Marcus)
  575. - Fixed bug #27586 (ArrayObject::getIterator crashes with [] assignment). 
  576.   (Marcus)
  577. - Fixed bug #27537 (Objects pointing to each other segfaults). (Dmitry)
  578. - Fixed bug #27535 (Problem with object freeing mechanism). (Dmitry)
  579. - Fixed bug #27504 (Visibility bugs in call_user_function()). (Dmitry)
  580. - Fixed bug #27338 (memory leak inside tsrm_virtual_cwd.c on win32). (Ilia)
  581. - Fixed bug #27291 (get_browser matches browscap.ini patterns incorrectly). 
  582.   (Jay)
  583. - Fixed bug #27287 (wddx segfaults during deserialization). (Moriyoshi)
  584. - Fixed bug #27263 (session extension crashes when unserializing referenced
  585.   values / objects). (Moriyoshi)
  586. - Fixed bug #27237 (Working with simplexml crashes apache2). (Rob)
  587. - Fixed bug #27227 (Mixed case class names causes Fatal Error in Constructor 
  588.   call). (Marcus)
  589. - Fixed bug #27125 (strval() doesn't work for objects with __toString()).
  590.   (Marcus)
  591. - Fixed bug #27123 (Fix crash caused by bug in get_object_vars()). (Andi)
  592. - Fixed bug #26677 (mbstring compile errors with IRIX compiler).
  593.   (K.Kosako <kosako at sofnec dot co dot jp>, Rui, Moriyoshi)
  594. - Fixed bug #26206 (register_long_arrays breaks superglobals). (Zeev)
  595. - Fixed bug #25724 (argv and argc not defined). (Zeev)
  596.  
  597. 12 Feb 2004, PHP 5 Beta 4
  598. - Changed exceptions so that they must now inherit from the built-in Exception
  599.   class. This allows for a general catch(Exception $e) statement to catch all
  600.   exceptions. (Andi, Zeev)
  601. - Added SPL extension. (Marcus, Derick)
  602. - Added checks for invalid characters in a cookie name and cookie data 
  603.   into set[raw]cookie(). (Brian)
  604. - Added support for ++ and += (and similar) to SimpleXML. (Andi, Zeev)
  605. - Added infrastructure for ++ and += (and similar) to object overloading
  606.   modules. (Andi, Zeev)
  607. - Added error message when trying to re-assign to $this variable. (Zeev, Andi)
  608. - Added support for an interface to extend another interface. (Zeev)
  609. - Added new pspell functions: (Brian)
  610.   . pspell_config_dict_dir()
  611.   . pspell_config_data_dir()
  612. - Added new Interbase functions: (Ard)
  613.   . ibase_service_attach() and ibase_service_detach().
  614.   . ibase_backup() and ibase_restore().
  615.   . ibase_maintain_db(), ibase_db_info() and ibase_server_info().
  616. - Added context option "http"/"request_fulluri" to send entire URI in request
  617.   which is required format for some proxies. (Sara)
  618. - Added optional third parameter 'strict' to array_keys(). (Andrey)
  619. - Added stream_lock() method to userspace streams interface. (Hartmut, Wez)
  620. - Added xsltprocessor->registerPHPFunctions(). (Christian)
  621. - Readded support for using classes before they are declared according to
  622.   the behavior in PHP 4. This won't work with classes who are using PHP 5
  623.   features such as interfaces. (Zeev, Andi)
  624. - Completely overhauled SimpleXML extension. (Marcus, Rob, Sterling)
  625. - Upgraded bundled SQLite library to version 2.8.11. (Ilia, Wez)
  626. - Improved destructor implementation to always call destructors on clean
  627.   shutdown. An order of destruction is not guaranteed. (Zeev, Andi)
  628. - Redesigned exception support. This fixes many bugs in the previous design
  629.   such as nested try's and problems with overloaded extensions. (Zeev, Andi)
  630. - Redesigned clone by adding a clone keyword (clone $obj) and copying all
  631.   properties before __clone() is called. Also allows calling parent __clone
  632.   function by using parent::__clone(). (Zeev, Andi)
  633. - Fixed interfaces to check for function return-by-reference equality when
  634.   inheriting and implementing interfaces. (Andi, Zeev)
  635. - Fixed foreach() to respect property visibility. (Marcus)
  636. - Fixed problem with parse error in include() file not stopping PHP's
  637.   execution. (Ilia)
  638. - Fixed var_export() to show public, protected and private modifiers properly.
  639.   (Derick)
  640. - Fixed problems with longlong values in mysqli. (Georg)
  641. - Fixed class name case preserving of user defined classes. (Marcus)
  642. - Fixed bug #27145 (Unmangle private/protected property names before printing
  643.   them inside error messages). (Ilia)
  644. - Fixed bug #27103 (preg_split('//u') incorrectly splits UTF-8 strings into
  645.   octets). (Moriyoshi)
  646. - Fixed bug #27042 (SPL: SeekableIterator seek() broken). (Marcus)
  647. - Fixed bug #27008 (Every class method can be called as static). (Marcus)
  648. - Fixed bug #26938 (exec() has problems reading long lines).
  649.   (Ilia, runekl[at]opoint[dot]com
  650. - Fixed bug #26947 (ext/dom: Crash when using DomDocument::getElementById()).
  651.   (Christian)
  652. - Fixed bug #26911 (crash in sqlite extension when fetching data from empty
  653.   queries). (Ilia)
  654. - Fixed bug #26844 (ext/mime_magic: magic file validation broken). (Jani)
  655. - Fixed bug #26819 (http_build_query() crashes on NULL output). (Ilia)
  656. - Fixed bug #26817 (http_build_query() does not handle private & protected
  657.   object properties correctly). (Ilia)
  658. - Fixed bug #26815 (foreach of (DOM) childnodes crashes when Xinclude is used).
  659.   (Rob)
  660. - Fixed bug #26796 (SQLite causes crashes with other extensions *connect()
  661.   calls). (Marcus)
  662. - Fixed bug #26762 (unserialize() produces lowercase classnames). (Marcus)
  663. - Fixed bug #26743 (getElementsByTagName doesn't work properly). (Rob)
  664. - Fixed bug #26736 (__autoload not invoked for parent classes). (Marcus)
  665. - Fixed bug #26723 (domNode::appendChild() changes child node namespace). (Rob)
  666. - Fixed bug #26697 (calling class_exists() on a nonexistent class in __autoload
  667.   results in segfault). (Marcus)
  668. - Fixed bug #26696 (string index in a switch() crashes with multiple matches).
  669.   (Andi)
  670. - Fixed bug #26695 (Reflection API does not recognize mixed-case class hints).
  671.   (Marcus)
  672. - Fixed bug #26690 (make xsltProcessor->transformToUri use streams wrappers).
  673.   (Ilia)
  674. - Fixed bug #26680 (Added version check in mysqli_report_index). (Georg)
  675. - Fixed bug #26675 (Segfault on ArrayAccess use). (Marcus)
  676. - Fixed bug #26640 (__autoload() not invoked by Reflection classes). (Jani)
  677. - Fixed bug #26543 (call_user_func() broken for self, parent). (Stanislav)
  678. - Fixed bug #26077 (memory leak when new() result is not assigned and no
  679.   constructor is defined). (Stanislav)
  680. - Fixed bug #26065 (Crash when nesting classes). (Marcus)
  681. - Fixed bug #25816 (disallow arrays in class constants). (Stanislav)
  682. - Fixed bug #25329 (sqlite_create_function with method and reference to $this).
  683.   (Marcus)
  684. - Fixed bug #25038 (call_user_func() issues a warning if function throws an
  685.   exception). (Marcus)
  686. - Fixed bug #24608 (__set not triggered when overloading with array).
  687.   (Stanislav)
  688. - Fixed bug #24243 (enabling browscap causes segfault). (Wez)
  689.  
  690. 21 Dec 2003, PHP 5 Beta 3
  691. - Bundled new tidy extension (John, Wez)
  692. - Upgraded PCRE library to version 4.5. (Andrei)
  693. - Dropped Windows 95 support. (Andi)
  694. - Moved extensions to PECL:
  695.   . ext/crack (Jani, Derick)
  696.   . ext/db (Jani, Derick)
  697.   . ext/mcal (Jani, Derick)
  698.   . ext/qtdom (Jani, Derick)
  699.   . ext/notes (Wez)
  700. - Added 'c' modifier to date() which returns the date in the ISO 8601 format.
  701.   (Derick, Manuzhai)
  702. - Added an optional parameter to microtime() to get the time as float. (Andrey)
  703. - Added MacRoman encoding support to htmlentities(). (Derick, Marcus Bointon)
  704. - Added possibility to call PHP functions as XSLT-functions. (Christian)
  705. - Added possibility to prevent PHP from registering variables when input filter
  706.   support is used. (Derick)
  707. - Added iconv stream filter (convert.iconv.*). (Moriyoshi)
  708. - Added EXSLT support in ext/xsl. (Christian)
  709. - Added qdbm handler for dba extension. (mg at iceni dot pl, Marcus)
  710. - Added new functions:
  711.   . dba_key_split() to split inifile keys in an array. (Marcus)
  712.   . time_nanosleep() signal safe sleep (Magnus, Ilia)
  713.   . headers_list(). (Sara)
  714.   . php_strip_whitespace(). strip whitespace & comments from a script. (Ilia)
  715.   . php_check_syntax(). check php script for parse errors. (Ilia)
  716.   . image_type_to_extension(). return extension based on image type. (Ilia)
  717.   . stream_socket_sendto() and stream_socket_recvfrom(). (Wez)
  718.   . iconv_mime_decode_headers(). (Moriyoshi)
  719.   . get_declared_interfaces(). (Andrey, Marcus)
  720.   . sqlite_fetch_column_types(). (Ilia)
  721. - Added proxy support to http:// wrapper. (Sara)
  722. - Added rename(), rmdir() and mkdir() support to userstreams. (Sara)
  723. - Added rename(), rmdir() and mkdir() support to ftp:// wrapper. (Sara)
  724. - Changed rename(), rmdir() and mkdir() to be routed via streams API. (Sara)
  725. - Changed stat() and family to be routed via streams API. (Sara)
  726. - Fixed include_once() / require_once() on Windows to honor case-insensitivity
  727.   of files. (Andi)
  728. - Fixed get_declared_classes() to return only classes. (Andrey, Marcus)
  729. - Fixed __autoload() to preserve case of the passed class name. (Andi)
  730. - Fixed bug #26615 () (runekl at opoint dot com, Derick)
  731. - Fixed bug #26591 ("__autoload threw an exception" during an uncaught).
  732.   (Marcus)
  733. - Fixed bug #26534 (stream_get_meta_data() -> Access Violation). (Wez)
  734. - Fixed bug #26528 (HTML entities are not being decoded by
  735.   xml_parse()/xml_parse_into_struct()). (Ilia)
  736. - Fixed bug #26182 (Object properties created redundantly). (Andi)
  737. - Fixed bug #26156 (REPLACE_ZVAL_VALUE works on uninit stack-based zvals).
  738.   (Moriyoshi)
  739. - Fixed bug #26083 (Non-working write support in ext/dom). (Ilia)
  740. - Fixed bug #26072 (--disable-libxml does not work). (Jani)
  741. - Fixed bug #26001 (serialize crashes when accessing an overloaded object that
  742.   has no properties (NULL hashtable)). (Wez)
  743. - Fixed bug #25664 (COM crashes when calling a Delphi implementations of
  744.   ITypeInfo). (Wez)
  745. - Fixed bug #24837 (Incorrect behaviour of PPP using foreach). (Marcus)
  746. - Fixed bug #24693 (Allow session.use_trans_sid to be enabled/disabled from
  747.   inside the script). (Ilia)
  748. - Fixed bug #24394 (Serializing cross-referenced objects causes segfault).
  749.   (Moriyoshi)
  750.  
  751. 30 Oct 2003, PHP 5 Beta 2
  752. - Lots and lots of changes in the Zend Engine 2 since beta 1:
  753.   . Added Iterators
  754.   . Improved memory manager
  755.   . Added Reflection API
  756.   . Removed the not so working namespaces support
  757.   . Removed support for expressions within constant declarations.
  758.   . You can read about most changes in ZEND_CHANGES under the Zend directory.
  759. - Improved the DBX extension: (Marc)
  760.   . Added DBX_RESULT_UNBUFFERED flag for dbx_query().
  761.   . Added dbx_fetch_row()
  762.   . Added SQLite support.
  763. - Improved the Interbase extension: (Ard Biesheuvel)
  764.   . Added support for multiple databases into ibase_trans()
  765.   . Added support for CREATE DATABASE, SET TRANSACTION and EXECUTE PROCEDURE
  766.     statements into ibase_query()
  767.   . Added ability to bind PHP arrays to native Interbase arrays
  768.   . Added ibase_commit_ret() and ibase_rollback_ret()
  769.   . Added ibase_drop_db()
  770.   . Added ibase_gen_id()
  771.   . Added ibase_name_result()
  772.   . Added ibase_errcode()
  773.   . Added ibase_affected_rows() and ibase_num_params()
  774.   . Added ibase_param_info()
  775.   . Added ibase_wait_event()
  776.   . Added ibase_set_event_handler() and ibase_free_event_handler()
  777. - Added new COM extension with integrated .Net support. (Wez)
  778. - Added new functions:
  779.   . setrawcookie(). (Brian)
  780.   . pg_version(). (Marcus)
  781.   . dbase_get_header_info(). (Zak)
  782.   . snmp_read_mib(). (Jani)
  783.   . http_build_query(). (Sara)
  784.   . ftp_alloc(). (Sara)
  785.   . array_udiff(). (Andrey)
  786.   . array_udiff_assoc(). (Andrey)
  787.   . array_udiff_uassoc(). (Andrey)
  788.   . array_diff_uassoc(). (Andrey)
  789.   . convert_uuencode(). (Ilia)
  790.   . convert_uudecode(). (Ilia)
  791.   . substr_compare(). (Ilia)
  792.   . pcntl_wait(). (GeorgeS)
  793. - Added "resume_pos" context option to "ftp://" wrapper. (Sara)
  794. - Added optional parameter to OCIWriteTemporaryLob() to specify the type of LOB
  795.   (Patch by Novicky Marek <novicky@aarongroup.cz>). (Thies)
  796. - Added reflection API. (Andrei, George, Timm)
  797. - Changed length parameter in fgetcsv() to be optional. (Moriyoshi)
  798. - Fixed IPv6 support in MacOSX Panther. (Dan, Marko)
  799. - Fixed fgetcsv() to correctly handle international (non-ascii) characters.
  800.   (Moriyoshi)
  801. - Fixed support for <![CDATA[]]> fields within XML documents in ext/xml.
  802.   (Sterling)
  803. - Fixed visibility of __construct and __clone. (Marcus)
  804. - Fixed bug #25756 (SimpleXML's validate_schema_file() broken). (Moriyoshi)
  805. - Fixed bug #25581 (getimagesize() returns incorrect values on bitmap (os2)
  806.   files). (Marcus)
  807. - Fixed bug #25494 (array_merge*() allows non-arrays as argument). (Jay)
  808. - Fixed bug #24766 (strange result array from unpack()). (Moriyoshi)
  809. - Fixed bug #24729 ($obj = new $className; causes crash when $className is not
  810.   set). (Marcus)
  811. - Fixed bug #24565 (cannot read array elements received via $_REQUEST). (Zeev)
  812. - Fixed bug #24445 (get_parent_class() returns different values).
  813.   (Sterling, Stanislav)
  814. - Fixed bug #24403 (preg_replace() problem: Using $this when not in object
  815.   context). (Zeev)
  816. - Fixed bug #24399 (PEAR DB isError crash [instanceof_function fault?]).
  817.   (Sterling, Marcus)
  818. - Fixed bug #24396 (foreach ($k=>$v), the key $k is missing). (Zeev)
  819. - Fixed bug #24279 (__get() crash when no value is returned). (Ilia)
  820. - Fixed bug #22367 (undefined variable has a value). (Zeev)
  821. - Fixed bug #19859 (allow fast_call_user_function to support __call).
  822.   (Stanislav)
  823. - Fixed bug #17997 (Warning when switch() and reference are combined). (Zeev)
  824. - Fixed bug #17988 (strtotime failed to parse postgresql timestamp). (Derick)
  825.  
  826. 29 Jun 2003, PHP 5 Beta 1
  827. - Removed the bundled MySQL client library. (Sterling)
  828. - Switched to Zend Engine 2, which includes numerous engine level improvements.
  829.   A full list is available at http://www.php.net/zend-engine-2.php.
  830. - Added SQLite (http://www.hwaci.com/sw/sqlite/) extension: (Wez, Marcus, Tal)
  831.   . Includes bundled SQLite library
  832.   . Enabled by default
  833. - Completely Overhauled XML support:
  834.   . New simplexml extension. (Sterling)
  835.   . New DOM extension. (Rob, Chregu, Marcus)
  836.   . New XSL extension. (Chregu, Rob)
  837.   . Moved the old DOM-XML and XSLT extensions to PECL. (James, Sterling)
  838.   . ext/xml can now use either libxml2 or expat to parse XML. (Sterling)
  839.   . Removed bundled expat library. (Jani)
  840. - New php.ini options:
  841.   . "session.hash_function" and "session.hash_bits_per_character". (Sascha)
  842.   . "mail.force_extra_paramaters". (Derick)
  843.   . "register_long_arrays". (Zeev)
  844. - Improved the speed of internal functions that use callbacks by 40% due to a
  845.   new internal fast_call_user_function() function. (Sterling)
  846. - Improved the streams support: (Wez)
  847.   . Improved performance of readfile(), fpassthru() and some internal streams
  848.     operations under Win32.
  849.   . stream_socket_client() - similar to fsockopen(), but more powerful.
  850.   . stream_socket_server() - Creates a server socket.
  851.   . stream_socket_accept() - Accept a client connection.
  852.   . stream_socket_get_name() - Get local or remote name of socket.
  853.   . stream_copy_to_stream()
  854.   . stream_get_line() - Reads either the specified number of bytes or until
  855.     the ending string is found. (Ilia)
  856.   . Added context property to userspace streams object. (Sara)
  857.   . Added generic crypto interface for streams.
  858.     (supports dynamic loading of OpenSSL)
  859.   . Added lightweight streaming input abstraction to the Zend Engine scanners
  860.     to provide uniform support for include()'ing data from PHP streams across
  861.     all platforms.
  862.   . Added 'string.base64' stream filter. (Moriyoshi)
  863.   . Renamed stream_register_wrapper() to stream_wrapper_register(). (Derick)
  864. - Improved the GD extension: (Pierre-Alain Joye, Ilia)
  865.    . imagefilter() - Apply different filters to image.
  866.     (Only available with bundled GD library)
  867.    . Antialiased drawing support:
  868.      o imageantialias() - (de)active antialias
  869.      o imageline() and imagepolygon() antialias support
  870. - Changed the length parameter in fgetss() to be optional. (Moriyoshi)
  871. - Changed ini parser to allow for handling of quoted multi-line values. (Ilia)
  872. - Changed get_extension_funcs() to return list of the built-in Zend Engine
  873.   functions if "zend" is specified as the module name. (Ilia)
  874. - Changed array_search() to accept also objects as a needle. (Moriyoshi)
  875. - Changed ext/mcrypt to require libmcrypt version 2.5.6 or greater. (Derick)
  876. - Changed uniqid() parameters to be optional and allow any prefix length.
  877.   (Marcus)
  878. - Added new iconv functions. (Moriyoshi)
  879.   . iconv_strlen()
  880.   . iconv_substr()
  881.   . iconv_strpos()
  882.   . iconv_strrpos()
  883.   . iconv_mime_decode()
  884.   . iconv_mime_encode()
  885. - Added misc. new functions:
  886.   . ldap_sasl_bind(). (peter_c60@hotmail.com, Jani)
  887.   . imap_getacl(). (Dan, Holger Burbach)
  888.   . file_put_contents(). (Sterling)
  889.   . proc_nice() - Changes priority of the current process. (Ilia)
  890.   . pcntl_getpriority() and pcntl_setpriority(). (Ilia)
  891.   . idate(), date_sunrise() and date_sunset(). (Moshe Doron)
  892.   . strpbrk() - Searches a string for a list of characters. (Ilia)
  893.   . get_headers() - Returns headers sent by the server of the specified URL.
  894.     (Ilia)
  895.   . str_split() - Breaks down a string into an array of elements based on
  896.     length. (Ilia)
  897.   . array_walk_recursive(). (Ilia)
  898.   . array_combine(). (Andrey)
  899. - Added optional parameter to get_browser() to make it return an array. (Jay)
  900. - Added optional parameter to openssl_sign() to specify the hashing algorithm.
  901.   (scott@planetscott.ca, Derick)
  902. - Added optional parameter to sha1(), sha1_file(), md5() and md5_file() which
  903.   makes them return the digest as binary data. (Michael Bretterklieber, Derick)
  904. - Added optional parameter to mkdir() to make directory creation recursive.
  905.   (Ilia)
  906. - Added optional parameter to file() which makes the result array not contain
  907.   the line endings and to skip empty lines. (Ilia)
  908. - Added new range() functionality:
  909.   . Support for float modifier. (Ilia)
  910.   . Detection of numeric values inside strings passed as high & low. (Ilia)
  911.   . Proper handle the situations where high == low. (Ilia)
  912.   . Added an optional step parameter. (Jon)
  913. - Added encoding detection feature for expat XML parser.
  914.   (Adam Dickmeiss, Moriyoshi)
  915. - Added missing multibyte (unicode) support and numeric entity support to
  916.   html_entity_decode(). (Moriyoshi)
  917. - Added IPv6 support to ext/sockets. (Sara)
  918. - Added "ftp://" wrapper support to opendir(), stat() and unlink(). (Sara)
  919. - Added context options 'method', 'header' and 'content' for "http://" fopen
  920.   wrapper. (Sara)
  921. - Added input filter support. See README.input_filter for more info. (Rasmus)
  922. - Added a replace count for str_[i]replace(), see bug #8218. (Sara)
  923. - Fixed is_executable() to be available also on Windows. (Shane)
  924. - Fixed dirname() and strip_tags() to be binary-safe. (Moriyoshi)
  925. - Fixed bug #24098 (crash in pathinfo()). (Ilia)
  926. - Fixed bug #21985 and #22064 (various mb_send_mail() issues). (Moriyoshi)
  927. - Fixed bug #21600 (Assign by reference function call changes variable
  928.   contents). (Zeev)
  929.